Most multiprocessing systems distribute multiple tasks among a plurality of inter-connected processors. In a multiprocessing system, a task can be divided into smaller tasks that are executed in parallel so as to enhance overall performance. Multiprocessing has many uses in science, industry, and business.
While multiprocessing often results in improved performance, it may be suboptimal in certain situations. For example, computer network access points forward and route data streams made up of data packets that are usually sequential in nature (e.g., voice, video, etc.). Parallel processing of data streams may cause data packets to be routed or forwarded out of sequence, which can ultimately result in performance degradation.